package admin

import (
	"Walker/app/http/validator"
	"Walker/app/http/validator/admin"
	"Walker/app/services"
	"Walker/app/utils/response"
	"Walker/global"
	"github.com/gin-gonic/gin"
)

type Tang interface {
	Eat() string
}
type Login struct {
	loginService services.Login
}

// 	@Tags 登录注册模块
// 	@Summary 用户登录
// 	@Description 用户登录
// 	@Accept json
// 	@Produce json
// 	@Param username query string true "登录名称"
// 	@Param password query string true "登录密码"
// 	@Success 200 {object} response.JsonResult{data=string}
// 	@Failure 400 {object} response.JsonResult
// 	@Router /login [get]
func (controller *Login) Login(ctx *gin.Context) {
	//参数验证
	var loginRequest admin.LoginRequest
	err := validator.Verify(ctx, &loginRequest)
	if err != nil {
		response.Error(ctx, err.Error())
		return
	}
	token, err := controller.loginService.AdminLogin(loginRequest)
	if err != nil {
		response.Error(ctx, err.Error())
		return
	}
	//后台登录
	response.Success(ctx, "登录成功", token)
	return
}

func (controller *Login) MysqlStats(ctx *gin.Context) {
	// 获取通用数据库对象 sql.DB，然后使用其提供的功能
	sqlDB, err := global.DB.DB()
	if err != nil {
		response.Error(ctx, err.Error())
		return
	}
	var data map[string]string
	data["sss"] = "sss"
	// 返回数据库统计信息
	response.Success(ctx, "查询成功", sqlDB.Stats())
	return
}
